/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package views;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.DefaultListModel;
import javax.swing.JList;
import javax.swing.ListModel;
import models.*;

/**
 *
 * @author milleo
 */
public class FormCronograma extends javax.swing.JPanel {
    private MainWindow parentFrame;

    /**
     * Creates new form FormCronograma
     */
    public FormCronograma(MainWindow parentFrame) {
        initComponents();
        
        String[] projetos = Projeto.listAllAsArray();
        this.cboProjeto.setModel(new javax.swing.DefaultComboBoxModel(projetos));
        
        String[] funcionarios = Funcionario.listAllAsArray();
        DefaultListModel modelTodosFuncionarios = new DefaultListModel();
        for(int i = 0; i < funcionarios.length; i++){
            modelTodosFuncionarios.addElement(funcionarios[i]);
        }
        
        String[] tarefas = Tarefa.listAllAsArray();
        DefaultListModel modelTodasTarefas = new DefaultListModel();
        for(int i = 0; i < tarefas.length; i++){
            modelTodasTarefas.addElement(tarefas[i]);
        }
        
        this.lstTodasTarefas.setModel(modelTodasTarefas);
        this.lstTodosFuncionarios.setModel(modelTodosFuncionarios);
        
        this.parentFrame = parentFrame;
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        lblDataTermino = new javax.swing.JLabel();
        lblEquipe = new javax.swing.JLabel();
        btnCancelar = new javax.swing.JButton();
        scrollTodosFuncionarios = new javax.swing.JScrollPane();
        lstTodosFuncionarios = new javax.swing.JList();
        lblDataInicio = new javax.swing.JLabel();
        cboProjeto = new javax.swing.JComboBox();
        btnAdicionarFuncionario = new javax.swing.JButton();
        btnCadastrar = new javax.swing.JButton();
        btnRemoverFuncionario = new javax.swing.JButton();
        btnLimparEquipe = new javax.swing.JButton();
        lblProjeto = new javax.swing.JLabel();
        btnAdicionarTodos = new javax.swing.JButton();
        scrollEquipeProjeto = new javax.swing.JScrollPane();
        lstEquipeProjeto = new javax.swing.JList();
        txtDataTermino = new javax.swing.JTextField();
        txtDataInicio = new javax.swing.JTextField();
        lblTarefas = new javax.swing.JLabel();
        scrollTodasTarefas = new javax.swing.JScrollPane();
        lstTodasTarefas = new javax.swing.JList();
        btnAdicionarTarefa = new javax.swing.JButton();
        btnRemoverTarefa = new javax.swing.JButton();
        btnAdicionarTodasTarefas = new javax.swing.JButton();
        btnLimparTarefas = new javax.swing.JButton();
        scrollTarefasProjeto = new javax.swing.JScrollPane();
        lstTarefasProjeto = new javax.swing.JList();
        lblNome = new javax.swing.JLabel();
        txtNomeCronograma = new javax.swing.JTextField();

        lblDataTermino.setText("Data de Término");

        lblEquipe.setText("Equipe");

        btnCancelar.setText("Cancelar");

        lstTodosFuncionarios.setModel(new javax.swing.DefaultListModel() {
        });
        scrollTodosFuncionarios.setViewportView(lstTodosFuncionarios);

        lblDataInicio.setText("Data de Início");

        cboProjeto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                cboProjetoActionPerformed(evt);
            }
        });

        btnAdicionarFuncionario.setFont(new java.awt.Font("Ubuntu", 0, 16)); // NOI18N
        btnAdicionarFuncionario.setText(">>");
        btnAdicionarFuncionario.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAdicionarFuncionarioActionPerformed(evt);
            }
        });

        btnCadastrar.setText("Cadastrar");
        btnCadastrar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnCadastrarActionPerformed(evt);
            }
        });

        btnRemoverFuncionario.setFont(new java.awt.Font("Ubuntu", 0, 16)); // NOI18N
        btnRemoverFuncionario.setText("<<");
        btnRemoverFuncionario.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRemoverFuncionarioActionPerformed(evt);
            }
        });

        btnLimparEquipe.setText("Limpar");
        btnLimparEquipe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnLimparEquipeActionPerformed(evt);
            }
        });

        lblProjeto.setText("Projeto");

        btnAdicionarTodos.setText("Todos");
        btnAdicionarTodos.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAdicionarTodosActionPerformed(evt);
            }
        });

        lstEquipeProjeto.setModel(new javax.swing.DefaultListModel() {
        });
        scrollEquipeProjeto.setViewportView(lstEquipeProjeto);

        lblTarefas.setText("Tarefas");

        lstTodasTarefas.setModel(new javax.swing.DefaultListModel() {
        });
        scrollTodasTarefas.setViewportView(lstTodasTarefas);

        btnAdicionarTarefa.setFont(new java.awt.Font("Ubuntu", 0, 16)); // NOI18N
        btnAdicionarTarefa.setText(">>");
        btnAdicionarTarefa.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAdicionarTarefaActionPerformed(evt);
            }
        });

        btnRemoverTarefa.setFont(new java.awt.Font("Ubuntu", 0, 16)); // NOI18N
        btnRemoverTarefa.setText("<<");
        btnRemoverTarefa.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRemoverTarefaActionPerformed(evt);
            }
        });

        btnAdicionarTodasTarefas.setText("Todas");
        btnAdicionarTodasTarefas.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAdicionarTodasTarefasActionPerformed(evt);
            }
        });

        btnLimparTarefas.setText("Limpar");
        btnLimparTarefas.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnLimparTarefasActionPerformed(evt);
            }
        });

        lstTarefasProjeto.setModel(new javax.swing.DefaultListModel() {
        });
        scrollTarefasProjeto.setViewportView(lstTarefasProjeto);

        lblNome.setText("Nome");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(scrollTodosFuncionarios, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnAdicionarTodos, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(btnAdicionarFuncionario, javax.swing.GroupLayout.DEFAULT_SIZE, 103, Short.MAX_VALUE)
                                    .addComponent(btnRemoverFuncionario, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                .addComponent(btnLimparEquipe, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(scrollEquipeProjeto, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(scrollTodasTarefas, javax.swing.GroupLayout.DEFAULT_SIZE, 210, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnAdicionarTodasTarefas, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(btnAdicionarTarefa, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(btnRemoverTarefa, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addComponent(btnLimparTarefas, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(scrollTarefasProjeto, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(lblNome)
                        .addGap(76, 76, 76)
                        .addComponent(txtNomeCronograma))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(lblProjeto)
                        .addGap(66, 66, 66)
                        .addComponent(cboProjeto, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(lblEquipe)
                            .addComponent(lblTarefas)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(lblDataTermino)
                                    .addComponent(lblDataInicio))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(txtDataInicio, javax.swing.GroupLayout.PREFERRED_SIZE, 137, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(txtDataTermino, javax.swing.GroupLayout.PREFERRED_SIZE, 137, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(btnCadastrar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(btnCancelar)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lblNome)
                    .addComponent(txtNomeCronograma, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lblProjeto)
                    .addComponent(cboProjeto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lblDataInicio)
                    .addComponent(txtDataInicio, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(txtDataTermino, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(lblDataTermino))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(lblEquipe)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(btnAdicionarFuncionario)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnRemoverFuncionario)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnAdicionarTodos)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnLimparEquipe))
                    .addComponent(scrollTodosFuncionarios)
                    .addComponent(scrollEquipeProjeto, javax.swing.GroupLayout.PREFERRED_SIZE, 138, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(lblTarefas)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(btnAdicionarTarefa)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnRemoverTarefa)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnAdicionarTodasTarefas)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnLimparTarefas))
                    .addComponent(scrollTodasTarefas)
                    .addComponent(scrollTarefasProjeto, javax.swing.GroupLayout.PREFERRED_SIZE, 138, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(btnCadastrar)
                    .addComponent(btnCancelar))
                .addContainerGap())
        );
    }// </editor-fold>//GEN-END:initComponents

    private void cboProjetoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cboProjetoActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_cboProjetoActionPerformed

    private void btnAdicionarFuncionarioActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAdicionarFuncionarioActionPerformed
        swapValuesBetweenLists(lstTodosFuncionarios, lstEquipeProjeto);
    }//GEN-LAST:event_btnAdicionarFuncionarioActionPerformed

    private void btnRemoverFuncionarioActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRemoverFuncionarioActionPerformed
        swapValuesBetweenLists(lstEquipeProjeto, lstTodosFuncionarios);
    }//GEN-LAST:event_btnRemoverFuncionarioActionPerformed

    private void btnAdicionarTodosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAdicionarTodosActionPerformed
        swapValuesBetweenLists(lstTodosFuncionarios, lstEquipeProjeto, true);
    }//GEN-LAST:event_btnAdicionarTodosActionPerformed

    private void btnLimparEquipeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnLimparEquipeActionPerformed
        swapValuesBetweenLists(lstEquipeProjeto, lstTodosFuncionarios, true);
    }//GEN-LAST:event_btnLimparEquipeActionPerformed

    private void btnAdicionarTarefaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAdicionarTarefaActionPerformed
        swapValuesBetweenLists(lstTodasTarefas, lstTarefasProjeto);
    }//GEN-LAST:event_btnAdicionarTarefaActionPerformed

    private void btnRemoverTarefaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRemoverTarefaActionPerformed
        swapValuesBetweenLists(lstTarefasProjeto, lstTodasTarefas);
    }//GEN-LAST:event_btnRemoverTarefaActionPerformed

    private void btnAdicionarTodasTarefasActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAdicionarTodasTarefasActionPerformed
        swapValuesBetweenLists(lstTodasTarefas, lstTarefasProjeto, true);
    }//GEN-LAST:event_btnAdicionarTodasTarefasActionPerformed

    private void btnLimparTarefasActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnLimparTarefasActionPerformed
        swapValuesBetweenLists(lstTarefasProjeto, lstTodasTarefas, true);
    }//GEN-LAST:event_btnLimparTarefasActionPerformed

    private void btnCadastrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCadastrarActionPerformed
        String nome = this.txtNomeCronograma.getText();
        ListModel equipe = this.lstEquipeProjeto.getModel();
        Projeto projeto = new Projeto();
        projeto.load(this.cboProjeto.getSelectedItem().toString());
        
        Cronograma novoCronograma = new Cronograma();
        novoCronograma.setNome(nome);
        novoCronograma.setProjeto(projeto);
        
        DateFormat userDateFormat = new SimpleDateFormat("dd/MM/yyyy");
        DateFormat sqlDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        
        try {
            Date dataInicio = userDateFormat.parse(this.txtDataInicio.getText());
            Date dataTermino = userDateFormat.parse(this.txtDataTermino.getText());
            novoCronograma.setDataInicio(sqlDateFormat.format(dataInicio));
            novoCronograma.setDataTermino(sqlDateFormat.format(dataTermino));
        } catch (ParseException ex) {
            Logger.getLogger(FormCronograma.class.getName()).log(Level.SEVERE, null, ex);
        }
        
        novoCronograma.insert();
        
        int equipeSize = equipe.getSize();
        for(int i = 0; i < equipeSize; i++){
            Cronograma_Funcionario cron_func = new Cronograma_Funcionario();
            String nome_funcionario = equipe.getElementAt(i).toString();
            
            cron_func.setFuncionario(new Funcionario(nome_funcionario));
            cron_func.setCronograma(novoCronograma);
            
            cron_func.insert();
        }
    }//GEN-LAST:event_btnCadastrarActionPerformed

    private void swapValuesBetweenLists(JList from, JList to, boolean allList){
        DefaultListModel fromModel = (DefaultListModel) from.getModel();
        DefaultListModel toModel = (DefaultListModel) to.getModel();
        
        if(allList == true){
            int listSize = fromModel.getSize();
            int[] indices = new int[listSize];
            
            for(int i = 0; i < indices.length; i++)
                indices[i] = i;
            
            from.setSelectedIndices(indices);
        }
        
        List selectedOption = from.getSelectedValuesList();
        int[] selectedOptionIndex = from.getSelectedIndices();
        
        if(selectedOptionIndex.length > 0){
            int firstSelectedIndex = selectedOptionIndex[0];
            int lastSelectedIndex = selectedOptionIndex[selectedOptionIndex.length - 1];


            fromModel.removeRange(firstSelectedIndex, lastSelectedIndex);

            for(int i = 0; i < selectedOptionIndex.length; i++){
                toModel.addElement(selectedOption.get(i));
            }

            from.setModel(fromModel);
            to.setModel(toModel);
        }
        
    }
    private void swapValuesBetweenLists(JList from, JList to){
        swapValuesBetweenLists(from, to, false);
    }
    
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnAdicionarFuncionario;
    private javax.swing.JButton btnAdicionarTarefa;
    private javax.swing.JButton btnAdicionarTodasTarefas;
    private javax.swing.JButton btnAdicionarTodos;
    private javax.swing.JButton btnCadastrar;
    private javax.swing.JButton btnCancelar;
    private javax.swing.JButton btnLimparEquipe;
    private javax.swing.JButton btnLimparTarefas;
    private javax.swing.JButton btnRemoverFuncionario;
    private javax.swing.JButton btnRemoverTarefa;
    private javax.swing.JComboBox cboProjeto;
    private javax.swing.JLabel lblDataInicio;
    private javax.swing.JLabel lblDataTermino;
    private javax.swing.JLabel lblEquipe;
    private javax.swing.JLabel lblNome;
    private javax.swing.JLabel lblProjeto;
    private javax.swing.JLabel lblTarefas;
    private javax.swing.JList lstEquipeProjeto;
    private javax.swing.JList lstTarefasProjeto;
    private javax.swing.JList lstTodasTarefas;
    private javax.swing.JList lstTodosFuncionarios;
    private javax.swing.JScrollPane scrollEquipeProjeto;
    private javax.swing.JScrollPane scrollTarefasProjeto;
    private javax.swing.JScrollPane scrollTodasTarefas;
    private javax.swing.JScrollPane scrollTodosFuncionarios;
    private javax.swing.JTextField txtDataInicio;
    private javax.swing.JTextField txtDataTermino;
    private javax.swing.JTextField txtNomeCronograma;
    // End of variables declaration//GEN-END:variables
}
